package com.mzy;

import java.math.BigDecimal;

public class LeftRightMove {


    public static void print(int num) {
        for (int i = 31; i >= 0; i--) {
            String flag = ((num & (1 << i)) == 0) ? "0" : "1";
            System.out.print(flag);
        }
        System.out.println();
    }


    //
    //
    // public static void print(int num) {
    //     for (int i = 31; i >= 0; --i) {
    //         System.out.print(((1 << i) & num) == 0 ? "0" : "1");
    //     }
    //     System.out.println();
    // }

    public static void main(String[] args) {

        // print(21312312);
        // print(5);
        // print(21312312 ^ 123456);
        int a = Integer.MIN_VALUE;
        print(~-1 + 1);
        print(-1);
        print(a);
        // 带符号右移
        print(a >> 1);
        // 不带符号右移
        print(a >>> 1);

        System.out.println(Integer.SIZE);
        System.out.println(Long.SIZE);
        System.out.println(Double.SIZE);
        System.out.println(Byte.SIZE);;

    }
}